package com.mzpai.product.mapper;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.mzpai.mapper.BaseMapper;
import com.mzpai.product.model.StoreProduct;
import com.mzpai.product.vo.StoreProductDto;
import com.mzpai.product.vo.StoreProductSkuDto;
/**
 *
 * <b>使用帮助 | Mapper</b><br>
 *
 * yanglijun 2021-03-15 18:00:19
 * 
 *  @version 1.0.0
 *
 */
@Repository
public interface StoreProductMapper extends BaseMapper<StoreProduct> {
	
	/**
	 * 根据商品主键查询基础商品
	 * @param map
	 * @return
	 */
	StoreProduct queryByPrimaryId(Integer id);
	
	/**
	 * 根据商品编码查询基础商品
	 * @param map  @Param("carId") String carId,@Param("shardKey")  Integer shardKey
	 * @return
	 */
	List<StoreProduct> queryByProductCodeAndStoreId(@Param("productCode") String productCode,@Param("storeId")Integer storeId);
	
	/**
	 * 根据主键删除商品
	 * @param id
	 * @return
	 */
	void deleteByProductId(Integer id);
	
	/**
	 * 统计总数
	 * @param productId
	 */
	Integer countTotal(Map<String,Object> map);
	
	
	List<StoreProductDto> getProcuctAndBrandList(Map<String,Object> map);
	
	
	List<String> getProductCodeList(@Param("storeId")Integer storeId);
	
	
	/**
	 * 查询店铺下商品规格-SKU数据
	 * @param map
	 * @return
	 */
	List<StoreProductSkuDto> getStoreProductSkuList(Map<String,Object> map);
	
	
}